#ifndef _WORD_I_H
#define	_WORD_I_H

#include <iostream>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include "Dictionnary.hh"


using namespace std;
using namespace Dict;

class Word_i : public POA_Dict::Word,
	       public PortableServer::RefCountServantBase
{

	private:	 
		CategoryValue category;
		PropertyType propertyType;
		char* term;
	public:
		inline Word_i(){}

		Word_i (CategoryValue cat,PropertyType proptyType,char* term);
		virtual ~Word_i();
		virtual char* myTerm();
    		virtual CategoryValue myCategory();
   	 	virtual PropertyType* myProperties();
    		virtual char* toFile();
		
		void setPropertyType(PropertyType ptyType);
		void setCategoryValue(CategoryValue cat);

		void setTerm(char* terms); 

		inline char* getTerm(){return CORBA::string_dup(term);}

		inline PropertyType* getPropertyType(){return &propertyType; }

		inline CategoryValue* getCategoryValue(){return &category;}
		
		
};

#endif	/* _WORD_I_H */
